Der ObjectCursor von Udo Egner-Walter ist eine Skriptsammlung für den Screenreader JAWS der Firma Freedom Scientific. Die Sammlung beinhaltet Skripts, um dem Screenreader JAWS eine weitere Cursor-Art zur Verfügung zu stellen. In gewisser Weise ähnelt der ObjekctCursor dem bereits in JAWS integrierten TouchCursor, um zwischen den Steuerelementen einer Anwendung zu navigieren, fügt jedoch neue Features hinzu.
Dies ist keine offizielle Skriptsammlung der Firma Freedom Scientific den Entwicklern von JAWS. Alle enthaltenen Scripts wurden ausgiebig getestet. Dennoch kann es vorkommen, dass Skripts nicht ordnungsgemäß funktionieren. Ich weise Sie deshalb ausdrücklich darauf hin, dass Sie diese Skriptsammlung auf eigene Gefahr benutzen und der Autor keine Haftung für die Skripts dieser Sammlung übernimmt, ebenso keine Haftung für Schäden durch die Verwendung der Skripts oder falsch verstandener Anwendung der Skriptsammlung.
Weitere Infos zur Benutzung dieser Skriptsammlung entnehmen Sie bitte dem Abschnitt Copyright.
Udo Egner-Walter, Dezember 2020
Folgende Voraussetzungen sind nötig, um diese Skriptsammlung nutzen zu können:
Diese Skriptsammlung von Udo Egner-Walter ist lizensiert unter der Creative Commons Namensnennung-Nicht kommerziell 4.0 International
Dies ist eine allgemeinverständliche Zusammenfassung der Lizenz (die diese nicht ersetzt).
Sie dürfen:
Der Lizenzgeber kann diese Freiheiten nicht widerrufen solange Sie sich an die Lizenzbedingungen halten.
Unter folgenden Bedingungen:
Sie müssen sich nicht an diese Lizenz halten hinsichtlich solcher Teile des Materials, die gemeinfrei sind, oder soweit Ihre Nutzungshandlungen durch Ausnahmen und Schranken des Urheberrechts gedeckt sind.
Es werden keine Garantien gegeben und auch keine Gewähr geleistet. Die Lizenz verschafft Ihnen möglicherweise nicht alle Erlaubnisse, die Sie für die jeweilige Nutzung brauchen. Es können beispielsweise andere Rechte wie Persönlichkeits- und Datenschutzrechte zu beachten sein, die Ihre Nutzung des Materials entsprechend beschränken.
Quelle: https://creativecommons.org/licenses/by-nc/4.0/deed.de
Persönlich bedanken möchte ich mich vor allen bei folgenden Testern (alphabetisch):
Vielen Dank für eure Rückmeldungen und Vorschläge.
Weiter gilt mein Dank all den Testern, die ich vergessen habe zu erwähnen oder die hier nicht erwähnt werden wollten. Auch euch vielen Dank fürs Testen.
Ganz herzlich bedanken möchte ich mich auch bei René Ludwig, der es ermöglicht hat, dass die Skriptsammlung auf der deutschen JAWS-Seite zum Download angeboten werden kann.
Und zum Abschluss möchte ich noch dem Team, von DeepL danken für Bereitstellung des kostenlosen Übersetzungsdienstes im Web unter DeepL, welcher mir bei der Übersetzung ins Englische eine große Hilfe war.
Vielen Dank euch allen!
2020–12
Erste Veröffentlichung. Enthaltene Funktionen:
Diese Skriptsammlung umfasst folgende Dateien:
Die Installation umfasst folgende Schritte, die anschließend näher erläutert werden:
a) Kopieren ins Anwenderskriptverzeichnis
b) myExtensions-Skriptdatei verwenden
c) Tasten für die Skripts hinzufügen
d) Kompilieren des Quellcodes
Der erste Schritt besteht darin, die oben genannten Dateien in das Anwenderskriptverzeichnis zu kopieren.
Gehen Sie hierzu wie folgt vor:
Hinweis: Falls Sie auf die eben beschriebene Weise nicht in Ihr Anwenderskriptverzeichnis gelangen können, so können Sie alternativ so vorgehen:
Sie befinden sich nun in Ihrem Anwenderskriptverzeichnis, in welches Sie die o. g. Dateien kopieren können.
Achtung! Überschreiben Sie Dateien im Zielverzeichnis nur, wenn Sie eine ältere Skriptversion durch eine neuere Skriptversion ersetzen möchten. Fertigen Sie zuvor ein Backup der Dateien an.
Bei der Datei MyExtensions.jss handelt es sich um eine Anwenderskriptdatei, die von den JAWS-Entwicklern für eigene Skripts zur Verfügung gestellt wird. Sollte in Ihrem Anwenderskriptverzeichnis bereits eine Datei namens MyExtensions.jss existieren, so öffnen Sie diese mit dem Windows-Editor und fügen Sie folgenden Eintrag am Ende ein:
use "ewObjectCursor.jsb"
Sollte die Datei MyExtensions.jss noch nicht existieren, so benennen Sie die Datei:
ewObjectCursor (myExtensions).jss
um in die Datei:
MyExtensions.jss
Damit die Skripttasten verfügbar werden, müssen Sie in Ihre eigenen Tastaturzuordnungsdateien integriert werden.
Wenn sich in Ihrer Anwenderskriptdatei keine Datei namens Default.jkm befindet, so benennen Sie die Datei:
ewObjectCursor.jkm
um in die Datei:
Default.jkm
Fahren Sie dann mit dem nächsten Schritt d) Kompilieren des Quellcode fort.
Falls eine Datei Default.jkm bereits in Ihrem Anwenderskriptverzeichnis existiert, so öffnen Sie bitte die Datei ewObjectCursor.jkm in einem Texteditor. Sie können für die einfachere Bearbeitung die Endung JKM umbenennen in die Endung TXT.
Damit JAWS die Skripts nutzen kann, muss der Code vorher kompiliert werden, das heißt in ein für JAWS verwendetes Format übersetzt werden. Da diese Übersetzung von JAWS-Version zu JAWS-Version unterschiedlich ist, muss man dies für die jeweilige JAWS-Version von Hand erledigen. Die einzelnen Schritte sind wie folgt:
Taste | Beschreibung |
---|---|
Alt+Umschalt+Plus (im Nummernblock) | Aktiviert den ObjectCursor |
Escape | Beendet den ObjectCursor |
Der TouchCursor von JAWS verändert den Systemfokus bei seiner Verwendung nicht automatisch, um ein Erkunden des Bildschirms zu ermöglichen und damit der Anwender nach dem Beenden des TouchCursor wieder an der ursprünglichen Stelle mit dem Systemfokus zurückkehren kann. Da es in einigen Fällen sinnvoll ist, eine Erkundung des Bildschirms ohne Veränderung des Systemfokus zu ermöglichen, andererseits es in anderen Fällen sinnvoll wäre, den Systemfokus gleich mit dem Verwenden des ObjectCursors mitzubewegen, wurden im ObjectCursor beide Möglichkeiten vorgesehen.
Taste | Beschreibung |
---|---|
Pfeil rechts | Bewegt den ObjectCursor ein Steuerelement weiter ohne den Systemfokus zu ändern |
Pfeil links | Bewegt den ObjectCursor ein Steuerelement zurück ohne den Systemfokus zu ändern |
Pos1 | Bewegt den ObjectCursor zum ersten Objekt der Anwendung ohne den Systemfokus zu ändern |
Ende | Bewegt den ObjectCursor zum letzten Objekt der Anwendung ohne den Systemfokus zu ändern |
Taste | Beschreibung |
---|---|
Tab | Bewegt den ObjectCursor zusammen mit dem Systemfokus weiter zum nächsten Steuerelement. Falls der Systemfokus nicht zum neuen Objekt bewegt werden kann, bleibt der Systemfokus beim zuvor verwendeten Objekt. |
Umschalt+Tab | Bewegt den ObjectCursor zusammen mit dem Systemfokus zurück zum vorherigen Steuerelement. Falls der Systemfokus nicht zum neuen Objekt bewegt werden kann, bleibt der Systemfokus beim zuvor verwendeten Objekt. |
Strg+Pos1 | Bewegt den ObjectCursor zum ersten Objekt der Anwendung. Falls das erste Objekt fokussiert werden kann, wird der Systemfokus dorthin gesetzt. |
Strg+Ende | Bewegt den ObjectCursor zum letzten Objekt der Anwendung. Falls das letzte Objekt fokussiert werden kann, wird der Systemfokus dorthin gesetzt. |
Eine Anwendung besteht aus verschiedenen Steuerelementen wie Schalter, Eingabefelder, Menüs und so weiter. Diese Steuerelementtypen können im ObjectCursor schnell erreicht werden. Hierbei stehen folgende Tasten zur Verfügung:
Taste | Beschreibung |
---|---|
Pfeil hoch | Springt zum vorherigen Steuerelement, welches durch Drücken von Bild auf/ab aktuell eingestellt ist. |
Pfeil runter | Springt zum nächsten Steuerelement, welches durch Drücken von Bild auf/ab aktuell eingestellt ist. |
Bild auf | Ändert den Steuerelementtyp aufwärts, sodass Sie mit Pfeil hoch/runter dieses anspringen können. Es werden nur Steuerelementtypen zur Auswahl angezeigt, die auch tatsächlich in der Anwendung vorhanden sind. |
Bild ab | Ändert den Steuerelementtyp abwärts, sodass Sie mit Pfeil hoch/runter dieses anspringen können. Es werden nur Steuerelementtypen zur Auswahl angezeigt, die auch tatsächlich in der Anwendung vorhanden sind. |
Strg+Pfeil rechts | Springt zum nächsten Steuerelement desselben Typs. Stehen Sie beispielsweise aktuell auf einer Schaltfläche, so bewirkt der Befehl, dass die nächste Schaltfläche gesucht wird. |
Strg+Pfeil links | Springt zum vorherigen Steuerelement desselben Typs. Stehen Sie beispielsweise aktuell auf einer Schaltfläche, so bewirkt der Befehl, dass die vorherige Schaltfläche gesucht wird. |
Strg+Umschalt+Pfeil rechts | Springt zum nächsten Steuerelement eines anderen Typs. Stehen Sie beispielsweise auf der ersten Registerkarte und möchten auf das erste Steuerelement nach allen folgenden Registerkarten, so drücken Sie diese Tastenkombination. |
Strg+Umschalt+Pfeil links | Springt zum vorherigen Steuerelement eines anderen Typs. Stehen Sie beispielsweise auf der letzten Registerkarte und möchten auf das erste Steuerelement vor den Registerkarten, so drücken Sie diese Tastenkombination. |
Taste | Beschreibung |
---|---|
Leertaste oder Einfügen+Plus (im Nummernblock) | Wenn das aktuell im ObjectCursor gewählte Objekt den Systemfokus erhalten kann, bewirkt das Drücken dieser Taste, dass der Systemfokus an diese Stelle gesetzt wird. Der ObjectCursor wird dabei nicht beendet. |
Eingabetaste | Das aktuelle Objekt wird ausgeführt. Ist dies nicht möglich, wird ein Mausklick auf das aktuelle Objekt durchgeführt. Der ObjectCursor wird anschließend beendet. |
Umschalt+Eingabetaste | Das aktuelle Objekt wird ausgeführt. Ist dies nicht möglich, wird ein Mausklick auf das aktuelle Objekt durchgeführt. Im Gegensatz zur zuvor genannten Tastenkombination (Eingabetaste), wird der ObjectCursor allerdings nicht beendet. Vielmehr werden die Objekte der Anwendung neu eingelesen. Dies ermöglicht unter anderem, dass man auf einer Registerkarte im Menüband stehend, diese aktivieren kann und anschließend die neu aufgetauchten Steuerelemente dieser Registerkarten im ObjectCursor zur Verfügung hat ohne diese verlassen und neu starten zu müssen. |
Alt+Eingabetaste | Es wird ein Mausklick auf das aktuelle Objekt durchgeführt und der ObjectCursor anschließend geschlossen. |
Strg+Eingabetaste | Dieser Befehl simuliert den sogenannten MouseOver-Effekt. Hierbei wird die Maus zum aktuell gewählten Objekt gezogen und kurz bewegt. Dies bewirkt, dass zum Beispiel im Internet MouseOver-Menüs aktiviert werden. Der ObjectCursor wird hierbei nicht beendet und die Objekte der Anwendung neu eingelesen. |
Strg+Umschalt+Eingabetaste | Wenn Sie die zuvor genannte Tastenkombination verwenden, um ein Menü zu öffnen, so ist es im Anschluss nötig, dass die Maus nicht mehr auf dem aktuellen Objekt platziert ist. Aus diesem Grund setzt diese Tastenkombination die Mausposition neu und bewegt die Maus in die linke obere Ecke des Bildschirms. |
Da unterschiedliche Anwendungen unterschiedliche Bedürfnisse hervorbringen können, zeigt Ihnen die folgende Auflistung, wie Sie Suchergebnisse ihren Wünschen entsprechen anpassen können sowie Einstellungen für bestimmte Anwendungen speichern können:
Taste | Beschreibung |
---|---|
Strg+A | Speichert die aktuellen Einstellungen des ObjectCursor für die im Vordergrund befindliche Anwendung. Diese Einstellungen werden beim nächsten Start des ObjectCursor für diese Anwendung automatisch geladen. |
Strg+Rücktaste | Falls Sie für die aktuelle Anwendung die Einstellungen mit der zuvor genannten Tastenkombination gesichert haben, löscht diese Tastenkombination die hiermit verknüpfte Datei mit den Einstellungen. |
F1 | Ändert den Filter für die aufgelisteten Objekte des ObjectCursors. Wenn Sie die Taste einmalig drücken, wird von JAWS der aktuell gewählte Filter gesprochen. Drücken Sie die Taste zweimal kurz hintereinander, dann wird die nächste Filtereinstellung aktiv. Filter für Objekte sind: |
Taste | Beschreibung |
---|---|
F2 | Diese Einstellung legt fest, ob der ObjectCursor am Ende oder Anfang der Liste stoppen soll. Ist die Einstellung nicht aktiviert, so endet die Navigation am Ende bzw. am Anfang der Liste und es ertönt ein Signalton. Ist die Einstellung aktiviert, so beginnt der ObjectCursor am Ende bei weiterer Navigation mit Pfeil rechts wieder am Anfang der Liste bzw. am Anfang der Liste und weiterer Navigation mit Pfeil links wieder am Ende. |
F3 | Einstellung für Suche mit Kurztasten. Während der ObjectCursor aktiv ist, können Sie durch Tippen einer alphanumerischen Taste sich schnell durch die Liste aller Objekte bewegen. Hierbei haben Sie folgenden beide Möglichkeiten: |
Taste | Beschreibung |
---|---|
Alt+F7 | Setzen des temporären Überwachungsspots. Der ObjectCursor wird hierbei nicht beendet. Ein Überwachungsspot könnte zum Beispiel eine Zeitanzeige in einem Mediaplayer sein, die sich ständig ändert. |
Alt+Umschalt+F7 | Drücken Sie diese Tasten außerhalb des ObjectCursors, wenn Sie mit der zuvor genannten Tastenkombination einen temporären Überwachungsspot festgelegt haben. Wenn Sie die Taste drücken, wird der Name des Objekts von JAWS gesprochen (zum Beispiel eine sich ändernde Anzeige). Der temporäre Spot bleibt solange aktiv bis Sie JAWS oder das verwendete Programm schließen. |
Alt+Leertaste | Markiert das aktuelle Objekt im ObjectCursor als Spot und fügt ihn der Liste der Spots hinzu |
Alt+Umschalt+Strg+Plus (im Nummernblock) oder Strg+Umschalt+Plus (im Nummernblock) | Diese Taste steht nur außerhalb des ObjectCursors zur Verfügung und öffnet einen Dialog mit den zuvor als Spot markierten Objekten. Im Dialog selbst haben Sie folgende Möglichkeiten: |
Wenn Sie sich für eine Auswahl entschieden haben, drücken Sie die Eingabetaste, um dies zu bestätigen oder die Escape-Taste, um den Vorgang abzubrechen. Nach Bestätigen der Auswahl mit der Eingabetaste wird eine „nicht ausführbare“ Pseudo-Taste erstellt. Anschließend wird der Tastaturmanager geöffnet und JAWS spricht den Namen des neu erstellten Skripts. Suchen Sie das genannte Skript im Tastaturmanager und ändern Sie die „Pseudo“ Taste über das Kontextmenü, indem Sie eine eigene Taste vergeben.
Taste | Beschreibung |
---|---|
Einfügen+Pfeil hoch | Spricht das aktuell im ObjectCursor gewählte Objekt. |
Einfügen+Pfeil runter | Spricht alle Objekte des aktuellen Fensters der Reihe nach |
Strg+Pfeil runter | Spricht alle Text-Steuerelemente des aktuellen Fensters wie statischen Text, Dokumentfenster, Eingabefelder usw. |
Alt+N | Spricht den Namen des aktuell gewählten Objects |
Alt+F | Spricht die Beschreibung des aktuell gewählen Objekts |
Alt+H | Spricht den Hilfetext des aktuell gewählten Objekts |
Die im Folgenden aufgelisteten Tastenkombinationen lassen sich schlecht in Kategorien aufteilen und werden deshalb hier aufgelistet:
Taste | Beschreibung |
---|---|
Strg+N | Kopiert die Namen aller Steuerelemente des aktuellen Steuerelementtyps in die Zwischenablage. Wenn Sie sich auf einem Listeneintrag befinden, werden sozusagen alle Listeneinträge in die Zwischenablage kopiert. |
Strg+S | Kopiert alle Kurztasten und Tastenkombinationen des aktuellen Fensters in die Zwischenablage. Beachten Sie bitte, dass Sie für Tastenkombinationen des Menübandes den Vorgang für jede einzelne Registerkarte wiederholen müssen, da die Steuerelemente einer Registerkarte erst am Bildschirm angezeigt werden, wenn diese aktiviert wurde. |
Umschalt+F1 | Setzen eines temporären Lesezeichens im ObjectCursor. Möchten Sie beispielsweise die Steuerelemente weiter erkunden jedoch später wieder an die aktuelle Position zurück, so können Sie mit dieser Tastenkombination eine temporäres Lesezeichen setzten und mit der folgenden diese später wieder aktivieren. Möchten Sie ein Objekt per Drag & Drop verschieden, so drücken Sie ebenfalls diese Tastenkombination, damit das Objekt für eine spätere Drag & Drop-Operation markiert ist. |
Umschalt+F2 | Aktiviert ein zuvor erstelltes temporäres Lesezeichen. |
Strg++Umschal+F2 | Wenn Sie zuvor ein Objekt als temporäres Lesezeichen markiert haben, wird dieses jetzt in einem Drag & Drop-Vorgang auf das aktuelle Objekt gezogen. |
Wenn Sie Fehler entdecken, Fragen haben, Anregungen und Verbesserungsvorschläge machen wollen oder Kritik äußern möchten, können Sie dies gerne in deutscher oder englischer Sprache an folgende E-Mail-Adresse tun:
Bitte bedenken Sie jedoch, dass diese Skriptsammlung von mir als Privatperson erstellt wurde und ich ggf. nur in begrenztem Umfang auf Ihre E-Mails antworten kann.